home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 3: CDPD 3 / Almathera Ten on Ten - Disc 3: CDPD3.iso / scope / 076-100 / scopedisk88 / webspread / webspreadv1.6.doc < prev    next >
Encoding:
Text File  |  1995-03-19  |  49.9 KB  |  952 lines

  1.  
  2.  
  3.  
  4.  
  5.                    Webspread -- Description and Tutorial
  6.                    For version 1.6, which is freely
  7.                    distributable. All contents and the
  8.                    program are copyrighted by the author.
  9.                    (C) 1987, 88, 89, 90
  10.  
  11.  
  12. By Brad Webb
  13. 321 North Monroe Street
  14. Watertown, WI 53094
  15.  
  16.  
  17.                               Sections
  18.                               ========
  19.  
  20. Introduction
  21. The program
  22.   What is a Spreadsheet?
  23.   Webspread
  24.   Webspread Commands
  25.   Error Messages
  26.   Using Formulas
  27.   Standard Formulas
  28.   Special Formulas
  29.   Some Limitations
  30. Tutorial
  31.   Making a Spreadsheet
  32.   Starting, and Entering Text
  33.   Entering Formulas and Numbers
  34. Future Plans
  35. Final Word
  36. Documentation Revision History
  37.  
  38.                             INTRODUCTION
  39.                             ============
  40.  
  41.    The ELPLan Spreadsheet appeared in the August, 1987 issue of
  42. Jumpdisk (C).  At that time, I asked users to contact me about their
  43. experiences with the program. I would like to thank all those who
  44. responded. Webspread, a general update of ELPLan, is dedicated to you.
  45. (Webspread itself was also published in Jumpdisk in 1988.)
  46.    It seems ELPLan was being used for everything from home budgets to small
  47. businesses.  (We even had one business user call up with questions while
  48. preparing taxes -- on April 15, no less.)  Even with varied use, common
  49. requests came up.  In general, people wanted more speed.  I also realized
  50. that the error checking needed beefing up in one or two areas. These
  51. features have been included in the versions of Webspread that have
  52. appeared since.
  53.    Version 1.6 is the first that opens its own high resolution screen.
  54. The color scheme has been chosen to minimize interlace flicker on
  55. standard Amiga monitors. Other new features include the ability to enter
  56. data into a cell and move to another cell with a single press of a cursor
  57. key. Formerly you had to press the RETURN key to register your data, then
  58. move on to another cell. Error checking has been further enhanced as well.
  59.    Webspread is a simple spreadsheet, but I have found it capable of
  60. meeting my home needs. If you have never worked with a spreadsheet
  61. before, I think you will find the tutorial included in this document of
  62. value to you. You may wish to provide a copy to anyone you know who is
  63. just starting to use a computer and who may be unfamiliar with
  64. spreadsheets.
  65.    If you find the discussion of commands and spreadsheet theory in the
  66. next portions of this document confusing, don't despair. I have included
  67. a complete tutorial that should make everything much clearer once you
  68. have worked through it.
  69.    This version of Webspread may be freely distributed.  If you provide
  70. anyone with a copy, you must also include this document and neither this
  71. document or the program may be altered in any way. You may, however, add
  72. additional documents to the distribution if you wish.  The author retains
  73. all rights to the program and this documentation file.  Neither may be
  74. sold though a small disk copying fee may be charged.
  75.    I would be happy to receive bug reports and upgrade requests at the
  76. above address. I will not be responsible for any damages or liabilities
  77. resulting from the use of this program -- use it at your own risk. It is
  78. necessary for legal reasons to state that, but you should also know that
  79. this is the only spreadsheet I use so I have confidence in it.
  80.  
  81.  
  82.  
  83. WHAT IS A SPREADSHEET?
  84.  
  85.    A spreadsheet program is a computer version of the large green ledger
  86. sheets used by accountants from time immemorial.  These sheets have ruled
  87. lines dividing them into rows and columns.  The rows and columns can each be
  88. given titles, and information relating to those titles can be entered on the
  89. sheets where the rows and columns intersect.  This allows the user to set
  90. up a neat display of information.  For instance, your column titles could
  91. be the names of the months.  Your row titles could consist of a list of your
  92. monthly bills.   If you then wrote the amount paid for food in January
  93. where the food row and January column meet, and did the same for all your
  94. other expenses, you would have a method of tracking your household expenses.
  95. By totalling all the entries in the January column, you would know your
  96. expenses for that month.  By totalling the food row, you would have the
  97. total you spent on food for the year.  For easier reference, each row/column
  98. junction is called a "cell" and we talk about entering your information into
  99. the cells of the spreadsheet.
  100.    The advantages of computerizing a spreadsheet are many.  The computer can
  101. do the totalling for you.  You just enter the information and instructions
  102. (a formula) for totalling it.  You can even use the spreadsheet to look at
  103. different spending policies.  By including columns for future months and
  104. entering different figures, you can have the computer tell you how your
  105. future expenses and savings might be affected by doing things in several
  106. ways.  Businesses use spreadsheets extensively for these "what-if"
  107. projections.  In fact,the extreme value of these exercises was the chief
  108. reason for the widespread adoption of personal computers in business.
  109.    The homeowner can use a spreadsheet for "what-if" projections ("if we
  110. spend 10% less per month on entertainment, can we afford the new Amiga?").
  111. You can use it to plan and track a budget, keep track of your computer club
  112. dues, paper route collections or any financial matter. You can even do
  113. non-financial data management with one.  I used one for years to track
  114. assignments in a drafting department.  We know of a family that uses one
  115. to inventory groceries and make up shopping lists.
  116.    You can set up a blank spreadsheet with column and row headings, and the
  117. formulas needed to perform whatever calculations you wish to make.  You can
  118. then copy this blank sheet over into a new file whenever you need it,
  119. enter the appropriate data for you new file, and use the Recalc command.  In
  120. this way you could build up a set of budget files for every month of the
  121. year, for instance.  Spreadsheets are very versatile programs, once you
  122. start letting your imagination loose.
  123.  
  124.  
  125. Figure 1: a portion of a simple Webspread spreadsheet.
  126.  ____________________________________________________________________________
  127. '/'Commands:Copy,Delete,Files,Goto,Insert,Memory,New,Quit,Recalc,Same,Width,$
  128. @SUMB2.B5
  129.           A|        B|        C|        D|         E|          F|         G|
  130.  1                    Widget Production
  131.  2  Type:  Quantity:
  132.  3  small          10
  133.  4 medium          20
  134.  5  large          30
  135.  6         ==========
  136.  7         [       60]
  137.  
  138.    o The top line on the screen is displaying the main, or "slash",
  139.      commands.
  140.    o The cursor (represented by a pair of brackets) is in the cell at
  141.      position B7.  That position contains the summation formula shown on
  142.      the second line of the screen.  The current value of the formula is
  143.      60, as shown in the cell itself (60 being the sum of the values in the
  144.      cells B2 through B5).  By changing the value in any of the cells B2
  145.      through B5 and then executing the "/Recalc" command combination, the
  146.      cell at B7 would be re-evaluated and would display the results of the
  147.      new calculation.
  148.  
  149. WEBSPREAD
  150.  
  151.    The Webspread display consists of 44 rows for data, and as many columns
  152. as will fit on the screen using the width you select.  The default screen
  153. has seven columns.   Down the left of the screen are the row numbers.  The
  154. top of the screen shows letters which name each column.  The first position
  155. of each column is indicated by a (|) character.  Above the column letters
  156. are two lines for displaying commands and entering information.  We will
  157. refer to these lines as the upper and lower communication lines in the rest
  158. of these instructions. Most of the time, the upper communication line will
  159. display the commands you can use, and the lower line will be used for
  160. prompts from the program or data you are entering.
  161.    Below these we find the spreadsheet cells themselves.  Webspread
  162. provides you with 40 columns and 50 rows, for a total of 2000 cells.  Each
  163. cell may contain text, a numeric value, or a formula.  If you are just
  164. moving the cursor around the screen, the lower communication line will show
  165. the value or text entered into the cell where the cursor is.  If there is a
  166. formula in the cell rather than text or a value, the formula will be
  167. displayed on the lower communication line while the cell itself will
  168. display the current value of the formula's calculations.  This will always
  169. be a zero until the first Recalc command is used.  Look at Figure 1 above
  170. to see a sample spreadsheet display.
  171.  
  172. WEBSPREAD COMMANDS
  173.  
  174.    Webspread contains all of the basic spreadsheet functions.   If you are
  175. already familiar with spreadsheets, you will feel at home with Webspread.
  176. Because a spreadsheet requires the use of the keyboard so extensively, it
  177. was written with minimal mouse controls so that you can keep your hands on
  178. the keys. The only time the mouse is used is to confirm that you want to
  179. do something drastic or if there is need for you to pause a moment.
  180. Examples: erase the sheet, end the program run, change calculation mode,
  181. or if Webspread needs to show you an error message. In these cases, you will
  182. be presented with a requester window.
  183.    You move around the spreadsheet by pressing the cursor controls.  A
  184. colored cursor will highlight the cell that is currently active.  Each cell
  185. is identified by the column letter and row number that define its position.
  186. For example, the cell in the upper left hand corner of the sheet is cell
  187. A1.
  188.    The commands which let you control most of Webspread's functions are
  189. accessed by pressing the "/" key.  Once you do that, you will be asked to
  190. enter the first letter of the command you wish to execute, or the $ sign
  191. (to change the recalculation mode).  The commands, and what they do are
  192. listed here:
  193.  
  194.    /       Enables you to use the Main Commands. Press this key first, then
  195.    wait for the prompt "Press C,D,F,G,I,M,N,Q,R,W or $: ".  At
  196.    that point, press a key to select one of the following
  197.    commands.
  198.  
  199.  
  200.    Copy -    This is Webspread's cell copy command. When selected, a
  201.    sub-menu will appear on the top communication line to let you
  202.    select from among the following copy commands.
  203.  
  204.  (Copy)
  205.  Across - this command will let you copy the current cell (marked
  206.       by the cursor) to the right, as many times as you wish. You
  207.       Will be prompted for the number of copies to make.  If the
  208.       cell contains a formula, it will be copied along with the
  209.       most recently calculated value for the answer, even if the
  210.       answer is no longer correct in the formula's new location.
  211.       Using the Recalc command (see below) will properly
  212.       re-evaluate the entire sheet.
  213.  
  214.  (Copy)
  215.  Down - functions exactly as does the Across command, except
  216.       copies down from the current cell.
  217.  
  218.  (Copy)
  219.  Main-menu - returns you to the main (slash) command level.
  220.       Use this when done with all your copy commands.
  221.  
  222.  (Copy)
  223.  To - Lets you copy the contents of any one cell to any other.
  224.       The cursor does not have to be in the cell to be copied.
  225.       You will be prompted for the co-ordinates of the cell you
  226.       want copied.  You will then be asked where you want the
  227.       copy put. Note that formulas will behave as explained under
  228.       Across.
  229.  
  230.    Delete -  Removes a row or a column of information from the
  231.    spreadsheet.  You will be asked first if you wish to delete a
  232.    row or column, and then to specify either the row number or
  233.    column letter.  Note that no row numbers or column letters will
  234.    disappear.  Instead, the information in the row or column to be
  235.    deleted will be eliminated and all the remaining data will be moved
  236.    in to close up the space.
  237.  
  238.    Files -   This command allows you access to all Webspread's file
  239.    management commands.   A sub-menu will appear to let you access the
  240.    following commands.
  241.  
  242.  (Files)
  243.  Change directory - Selecting the Change directory command (by pressing 
  244.       the "C" key) will allow you to enter a standard AmigaDOS pathway
  245.       to the directory where you want your files kept. Directories 
  246.       correspond to the drawers visible on the Workbench. If you do not
  247.       specify a pathway, Webspread will look for a disk named Webspread:
  248.       Hard drive owners may wish to set up an alias, using Webspread: as
  249.       an alias for wherever they wish to keep their spreadsheets.
  250.  
  251.  (Files)
  252.  Files - Lists the files contained in the active directory.  All
  253.       files will be listed, not just Webspread's.  This command is the
  254.       equivalent of the AmigaDOS DIR command.  Note that all Webspread
  255.       files have either the extension .Sheet or .ASCII added to them.
  256.       These extensions are added automatically by the program.   You never
  257.       have to type them, and in fact Webspread would become very confused
  258.       if you did. The extensions are added so that you can tell what type
  259.       of file each is when you list them with this selection.
  260.  
  261.  (Files)
  262.  Load - This is the command to use to load files you have already
  263.       saved.   After selecting this command you will be asked to
  264.       type in the name of the file you want loaded.  Please note
  265.       that you must not type the .Sheet extension.  The program
  266.       will add that for you.
  267.  
  268.  (Files)
  269.  Main-menu - This command will return you to the main (slash) command
  270.       level.   Use it when done with all your Files commands.
  271.  
  272.  (Files)
  273.  Output file - An output file is a special type of file created by 
  274.       Webspread. It consists of a simple text file containing a portion 
  275.       of your spreadsheet (or the entire sheet if you wish).  Such
  276.       a text file can be loaded into most word processors or text
  277.       editors, including AmigaDOS's Ed text editor.  This allows
  278.       you to include your spreadsheets in reports or other documents.  
  279.       When selected, you will be prompted to enter a file name for your 
  280.       file.   This name will have the extension .ASCII added to it by 
  281.       the program (please don't type it yourself!) so that you can easily 
  282.       find it later when you want to use it with your word processor.   
  283.       You will also be asked to enter the cell co-ordinates of the LOWER 
  284.       RIGHT-HAND CORNER of the area of the sheet you want included in the
  285.       Output file.  The UPPER LEFT-HAND CORNER of the saved portion will 
  286.       be the UPPER LEFT-HAND CORNER of the display on your computer 
  287.       screen.
  288.  
  289.  (Files)
  290.  Print - Print allows you to get a paper copy of your spreadsheet.
  291.       If the sheet won't all fit on one page, Webspread will automatically
  292.       break it up to fit on several.  There is no option to print out the
  293.       sheet sideways.  You do not have to print out the entire 2000 cell
  294.       sheet. When you select this command, you will be asked to enter the
  295.       cell co-ordinates of the LOWER RIGHT-HAND CORNER of the area of the
  296.       sheet you want included in the print out.  The UPPER LEFT-HAND CORNER
  297.       of the printed portion will be the upper left hand cell of the
  298.       screen display.  MAKE SURE the upper left-hand corner of what you
  299.       want printed is also the upper left hand cell on the screen BEFORE
  300.       selecting this command.
  301.  
  302.  (Files)
  303.  Save - This command allows you to save your spreadsheet to disk.
  304.       When selected, it will prompt you for a filename to save the
  305.       data under.  Webspread will automatically append the extension .Sheet
  306.       to your filename.  Please don't type the extension in yourself.  The
  307.       use of the .Sheet extension provides an easy way for you to spot your
  308.       Webspread files when doing a directory listing from AmigaDOS or a
  309.       Files listing from within Webspread.
  310.  
  311.  (Files)
  312.  Earlier 
  313.    Revision - This Files menu selection is intended to help you with files
  314.       created by ELPLan. Ordinarily, ELPLan files should load with no
  315.       trouble. In some cases, you may get an error message "Input past file
  316.       end". This is really an informational message and is caused by the
  317.       fact that Webspread files are longer. The Earlier Rev. menu selection
  318.       is here only for use if you have difficulties in getting a good load
  319.       with an old file. It will ensure the problem file loads. Once saved
  320.       again, it will have become a Webspread file and will cause no further
  321.       trouble. (Note that in testing, it was never necessary to use this
  322.       menu item with any old files. However, if you ever need it here it
  323.       is.)
  324.  
  325.    Goto -    Provides an alternative to using the cursor keys to moving
  326.    around in Webspread.   After selecting Goto, you will be asked to
  327.    enter the cell name.  Type it in with no spaces or commas; for
  328.    example ab32. There is no need to use capital letters. The screen
  329.    will be redrawn to show your new position.  If you enter the cell
  330.    name backwards, Webspread will tell you so and give you a chance to
  331.    re-enter the name.
  332.  
  333.    Insert -  Allows you to add a row or column of data in the middle of
  334.    your spreadsheet at any time.  You will be asked which you wish to
  335.    add, and then which row or column you want the new area IN FRONT OF. 
  336.    As with Delete, no row or column designators are added.  The existing
  337.    information is moved out to new positions.  WARNING: anything in the
  338.    previously outermost row or column is shoved off the spreadsheet and
  339.    lost.  (Actually, a buffer of one column and one row is provided, but
  340.    it is dangerous to rely on this.)
  341.  
  342.    Memory -  Reports how much free memory is available for your spreadsheet.
  343.    It is a good idea to keep an eye on this, especially with large sheets
  344.    and and other programs running in the system.  Webspread can use all the
  345.    memory attached to your system, not just the amount allocated to
  346.    AmigaBASIC as in ELPLan.
  347.  
  348.    New -     Clears the existing data from the spreadsheet, without exiting
  349.    the program.  You will be presented with a requester window to
  350.    either confirm or cancel the command.
  351.  
  352.    Quit -    Ends the program run.  You will be provided with a requester
  353.    window to either confirm or cancel this command.
  354.  
  355.    Recalc -  This command tells Webspread to evaluate all the formulas
  356.    that you have entered.  You may use forward references in Webspread
  357.    and they will be properly evaluated. ("Forward references" means that
  358.    any formula may contain the results of a formula at a later position
  359.    in the spreadsheet, one that will be calculated later in the
  360.    evaluation process.  Webspread always evaluates all formulas twice so
  361.    that these forward references will be taken into account.)
  362.  
  363.    Width -   Width lets you set the amount of spaces wide that your columns
  364.    will be.  Note that ALL columns must be the same width.
  365.  
  366.        $ -   Pressing the dollar sign will bring up Webspread's calculation
  367.    mode requester.  You will have two boxes to "click" in, one for each mode.
  368.    In "Currency" mode, all calculations are rounded off to two decimal
  369.    positions.  In "all decimals" mode, the computer will use as many decimal
  370.    positions as needed to show the results of a calculation. If you are
  371.    working with money, use the "Currency" mode.  When this command is
  372.    selected, Webspread will inform you of which mode is currently in use.
  373.  
  374.    ERASE -   There is no special command in Webspread to erase a cell's
  375.    data.   Instead, all you have to do is enter a space.  Position
  376.    yourself in the cell you wish to blank, hit the space bar and
  377.    then the return key or a cursor key.
  378.  
  379.  
  380.  
  381. ERROR MESSAGES
  382.  
  383.    The following error messages may crop up during your use of Webspread.
  384.    It would be a good idea to become familiar with them.
  385.  
  386.    File not found - will appear in the error message box when you try to
  387.      load a file that does not exist.  Click in either continue box
  388.      and try again. (Do you have the full pathname specified?)
  389.  
  390.    E!   -   will appear when you have a number too large to display
  391.      with the current cell width.   Resize your column width to correct.
  392.    
  393.    Formula Error! Please re-enter - This message will appear during sheet
  394.      evaluation if Webspread meets up with a formula it can't understand. 
  395.      A requester box will display the error message, along with the 
  396.      co-ordinates of the cell containing the offending formula.
  397.  
  398.    Error n has occurred   -  This message will show up in the error message 
  399.      box for any other problems the program runs into.  "n" will be some 
  400.      number which designates a specific error.  Some errors are as follows:
  401.  
  402.     Some Possible Error Messages:
  403.  
  404.    5 - Illegal Function Call -- an improperly set up formula can cause this
  405.        message.  Check your formulas over carefully.  You may also see this
  406.        message if you run low on memory.
  407.  
  408.    61- Disk Full -- quick, grab your previously formatted safety disk and
  409.        save your work to that.    You do have one around, don't you?
  410.  
  411.    64- Bad File Name -- better try again with a different name.
  412.  
  413.    70- Permission Denied -- is your disk write protected?
  414.  
  415.    74- Unknown Volume -- you probably just misspelled the name of your
  416.        data disk.
  417.  
  418. Your Amiga Basic manual lists all the other errors you might come up with.
  419. Even though this is a compiled version of the program, it retains the
  420. same error numbers as in regular Amiga Basic.  Webspread recovers well from
  421. most errors.  In fact, error checking and recovery is improved over
  422. ELPLan's.  (Thank you to all the users who provided input on this matter.)
  423. If you do have a problem, the cursor position may be unexpectedly moved and
  424. a second "ghost" cursor may exist on your screen. You can eliminate the
  425. "ghost" cursor by running the real cursor over it. (The real cursor is the
  426. one that moves when you hit the cursor keys.)
  427.  
  428.  
  429. USING FORMULAS
  430.  
  431.    With the commands just discussed you can manipulate your spreadsheet once
  432. you get it made, move around it, save it, recall it and even print it.  The
  433. only thing we haven't discussed yet is how to make it calculate answers for
  434. you.  Take a moment to look again at Figure 1.  It should be fairly easy to
  435. figure out how to move about the sheet with the cursor controls, entering
  436. text or numeric values to build the simple spreadsheet shown.  The key to
  437. making it all work, though, is the formula in cell B7 which automatically
  438. figures the total for us.  This section of the instructions will deal with
  439. the entering of the formulas needed to make the sheet work.  We will first
  440. look at the standard sort of formulas, and then at two special cases.
  441.  
  442.  
  443. STANDARD FORMULAS
  444.  
  445. o Operators -
  446. Formulas in Webspread can use any of the mathematical operators.  + - / *
  447. are used for addition, subtraction, division and multiplication
  448. respectively. All formulas need at least one operator.   If you just want
  449. the value of one cell to be shown somewhere else as well, you can add 0 to
  450. it in its new location.  For example, if you want the value of cell B6 to
  451. be shown in cell C7 also, you would use the following formula in cell C7:
  452.  
  453.       @B6+0
  454.  
  455.  
  456. o Evaluating -
  457. Formulas are evaluated strictly from left to right.  Parentheses are not
  458. supported.  For example, the formula @A1+B2/B3 would be evaluated as follows:
  459. first, the value in cell A1 would be added to the value in cell B2.  Then
  460. the result of that calculation would be divided by the value in cell B3.
  461. The result of the calculation would be displayed in whatever cell contained
  462. the above formula.
  463.  
  464. o Relative cell references -
  465. Take a quick glance at the sample formulas shown below in Figure 2.  The cell
  466. references in most of them are pretty easy to figure out.  A few examples,
  467. though, contain some strange looking things.  Those bracketed items are
  468. relative cell references, and they can add a great deal of power and
  469. flexibility to your spreadsheets.
  470.    Instead of refering to an absolute location on the page using its
  471. co-ordinates, you can use a relative cell reference.  This can be helpful if
  472. you expect to add or delete row or columns at a later date.  The relative
  473. references mean "use the value in whatever cell is found a specific distance
  474. away".  The reference can be to a cell that is a either a number of
  475. columns or rows away from the one containing the formula.  The relative cell
  476. reference must be between square brackets.  You enter either an R or a C
  477. depending on whether you want the reference to be in the horizontal or
  478. vertical direction.  You then use either a minus or plus sign to indicate
  479. whether the desired cell is to the left or up (-) or right or down (+).
  480. Examples will show this best.
  481.  
  482.       [R-1] means to use the value in the cell one row above.
  483.  
  484.       [C+1] means to use the value in the cell one column to the right.
  485.  
  486. o Using numbers -
  487. You can freely mix numbers and cell references in your formulas.  That is,
  488. you can multiply cell A1 by 1.25, for instance, using the following formula:
  489. @A1*1.25
  490.  
  491. o Format -
  492. Formulas in Webspread are simple constructions.  You string together the
  493. cell co-ordinates and numbers you want used and place the appropriate
  494. operators between any two as required.   There are some simple rules to
  495. observe when doing this, however.
  496.    - all formulas must begin with the commercial "at" symbol, @.
  497.  
  498.    - there must always be an operator between any two formula elements, and
  499.      at least one operator in all formulas.
  500.  
  501.    - parenthetical operations are not supported.
  502.  
  503.    - relative cell references can be used at any point where an absolute
  504.      cell reference could be used.
  505.  
  506.    - there must never be any spaces in the formulas.
  507.  
  508.    - the equal sign is always assumed, never written.  The answer to the
  509.      formula's evaluation will be placed in the cell containing the formula.
  510.  
  511.    - it is not necessary to use capital letters when entering formulas.
  512.  
  513.  
  514.    Figure 2: Sample Webspread formulas:
  515.  
  516.  
  517.       @A1+B1-C1        @C2*D2    @AB32/BB32    @AB1+[R-1]
  518.  
  519.       @[C-10]-[C-11]      @B2*2.75    @G17+0
  520.  
  521. SPECIAL FORMULAS
  522.  
  523. Webspread provides two special types of formulas to add extra flexibility
  524. and power to your spreadsheets.  These are the Summation Formula and the
  525. ELFFs Call formula.  Both are described in detail below.
  526.  
  527. o Summation Formula -
  528. These formulas let you sum a range of cells.  A range of cells means a
  529. grouping of cells that are all touching.  The values contained in the cells
  530. of the range will all be added together and the result placed in the cell
  531. that holds the formula.  Cells containing text within the range will be
  532. ignored.  The formula is written simply: first the command @SUM, then the
  533. first cell co-ordinate in the range, then a dot (period) and lastly the
  534. final cell co-ordinate in the range.  No spaces are used.  You do not have
  535. to type in capital letters.
  536.    The range may be set up in several ways:
  537.  
  538.    - As a range of cells in the same row but in different columns.  Example:
  539.  
  540.        @SUMA1.E1
  541.  
  542.    - As a range of cells in the same column but in different rows.  Example:
  543.  
  544.        @SUMA1.A6
  545.  
  546.    - As a rectangular area. Example:
  547.  
  548.        @SUMA1.C3
  549.  
  550.    Finally, you may use relative cell references if you wish, just as
  551. discussed above in the section on standard formulas.  An example:
  552.  
  553.        @SUM[R-10].[R-1]
  554.  
  555.    One last rule on summation formulas: the second cell cited must always be
  556. either more to the right or lower (ie. higher column or row designator) than
  557. the first.
  558.  
  559. o ELFFs Call Formulas -
  560. The ELFFs Call formulas allow you to extract data from a file maintained by
  561. the ELFFs Datafile Manager program.  You use this formula type to refer to a
  562. specific dataline within a specific ELFFs created file.  The contents of
  563. that dataline will be extracted from the file and placed in the cell
  564. containing the formula.  Let's look at a sample formula and explain how it
  565. works.
  566.  
  567.        @ELFDiskName:Directory/Filename\n
  568.  
  569. Where:
  570.    - @ELF is the first item in the formula.
  571.  
  572.    - Next comes the pathway to the file desired, in standard AmigaDOS
  573.      format.
  574.       . DiskName is the volume name of the diskette containing the file, if
  575.    different than the diskette in use.   It is always a good idea to use
  576.    the actual volume name in these formulas to prevent "file not found"
  577.    errors if you ever put the wrong disk in the drive.
  578.  
  579.       . Directory/ defines the directory on the diskette DiskName, where our
  580.    file resides and
  581.  
  582.       . Filename is the actual file we want.
  583.  
  584.       . If there are spaces in your pathname, there is no need to enclose
  585.    everything in quotation marks as when using DOS.  Just type it in
  586.    spaces and all.  In fact, if you do use quotes you will confuse
  587.    Webspread.
  588.  
  589.    - \n is special note to Webspread.  "n" should be replaced with the
  590.      dataline number containing the information desired.  It is important
  591.      to put the reversed slash in to set this number off from the pathname.
  592.  
  593. Note: ELFFs appeared in the November 1986 edition of Jumpdisk. It is not
  594. in the public domain and may only be legally obtained by purchasing a
  595. past issue from Jumpdisk. The address is 1493 Mt. View Avenue, Chico, CA
  596. 95926. ELFFs is a BASIC program.
  597.  
  598.  
  599. SOME LIMITATIONS
  600.                          
  601.    As with all programs, there are some limitations to Webspread that you
  602. should be aware of. First, the loading and saving of sheets is slow. This
  603. is a result of it's being written in Basic. The compiler does not speed
  604. this up as much as I would like.
  605.    Second, Webspread can only handle formulas feeding formulas to a depth
  606. of two. What does that mean in English? It means if the results of one
  607. formula's calculation feed another formula, accuracy will always be
  608. maintained. However, if the second formula's results feed a third,
  609. accuracy may be lost. Example: if a formula in cell T3 produces an answer
  610. which is used in a formula in cell G6, there will be no problem. However,
  611. if the answer obtained in G6 is used by another cell, say B4 or whatever,
  612. accuracy could be completely lost because there are three cells linked
  613. together. [Actually, as long as the cell designation is always higher or
  614. equal in both the column and row of the cell using another's results,
  615. accuracy will be maintained forever. In other words, if cell A3 feeds G4
  616. and G4 feeds H4, no problems will arise. If you go H4 to G4, then G4 to
  617. A3 in your formula linking, H4 and G4 will be fine. The value in A3 will
  618. be indeterminate. All this is because Webspread calculates cells starting
  619. with A1 and going across and down.  It does this twice, hence it can pick
  620. up links two deep in the direction different from the calculation flow.]
  621.  
  622.  
  623.  
  624.                               TUTORIAL
  625.                               ========
  626.  
  627. MAKING A SPREADSHEET
  628.  
  629.    Its time now to put together everything we've just learned about
  630. Webspread and see how it works in practice.  To accomplish that, let's go
  631. through the creation of the spreadsheet used in Figure 3 step by step.
  632. Along the way we'll add a few things to show how to use more features of
  633. Webspread.
  634.  
  635.  
  636.  
  637.  
  638.  
  639.  
  640. Figure 3: a Webspread spreadsheet for Wizbang Widgets.
  641.      ______________________________________________________________________
  642.     |'/'Commands:Copy,Delete,Files,Goto,Insert,Memory,New,Quit,Recalc,,Widt>
  643.     |@SUMB4.B6                                                             \
  644.     |         A|        B|        C|        D|       E|        F|        G| \
  645.     | 1                  July Widget Production                             /
  646.     | 2                                           Cost     Total           <
  647.     | 3   Type: Quantity:    Price:   Income:    Each:     cost:   Profit:  |
  648.     | 4 small          10        50       500       30       300       200  >
  649.     | 5 medium         20        60      1200       40       800       400 /
  650.     | 6 large          30        70      2100       50      1500       600 \
  651.     | 7        .............................................................\
  652.     | 8 TOTALS:        60                3800               2600      1200  <
  653.  
  654.  
  655. We will take a few minutes and together create the spreadsheet shown,
  656. including the data and formulas, then play with it some when we are done.
  657. When we have accomplished all this, you will be well on your way to using
  658. the basic Webspread features in building your own spreadsheets.  Before we
  659. start, you may wish to make a paper copy of these instructions, so you
  660. can more easily use the program and still read the instructions.  (The
  661. combination of Webspread and this document may use too much memory to have
  662. both available on the screen at the same time in your computer.)
  663.  
  664.  
  665. STARTING, AND ENTERING TEXT
  666.  
  667.    Begin by loading and running Webspread.  After a few moments to display
  668. the title screen and to set things up, the cursor appears.   Study the
  669. layout of the screen first.  Each row has a number to identify it, and each
  670. column is identified by a letter, as already mentioned.  Note that the
  671. column letters are always at the far right of the column, and that a ("|")
  672. character starts the next column.  Let's try the cursor keys first, to begin
  673. familiarizing ourselves with Webspread.  Try the cursor down, right,up and
  674. left keys.  Note how the cursor moves on the spreadsheet, filling the
  675. active cell with color.   The spreadsheet we are going to build is for a
  676. financial record so we will want our sheet in currency mode.  Press the
  677. slash ("/") key to obtain the command prompt.  Now, press the $ (shift-4).
  678. Up will pop a requester box, telling you that you are in currency mode (the
  679. default setting).  You can click on either the "Currency" box or the "All
  680. dec(imals)." box to select the mode of operation. Click on the "Currency"
  681. box.  (I know, we were already in that mode but I wanted you to see how to
  682. set the mode in case you need to do so at some point.)
  683.    Now, cursor over to cell C1. That is the third cell in on the top row.
  684. Type "July Widget" and hit <RETURN>. You will see that the "t" on the end
  685. of Widget does not show up on the spreadsheet. That is because our cells
  686. are only 10 characters wide. We could resize the cells to 11 characters,
  687. and then all of our text would show.  It has not been forgotten by
  688. Webspread, but just cannot all be shown at once.  (Look at the lower
  689. communication line to prove this to yourself.) We won't resize the width of
  690. our columns, however, as 10 spaces is fine for most of the sheet. Instead,
  691. cursor to cell D1 and enter "t Producti", then on to E1 and type in "on".
  692. You can either press the RETURN key to enter data into a cell and then
  693. move to another cell with a cursor key, or just press the appropriate
  694. cursor key and Webspread will know to enter your data before leaving the
  695. current cell.  We now have a complete title on our spreadsheet.  If you
  696. make a mistake and type anything into the wrong cell, just enter a space
  697. to blank the cell.
  698.    Just for fun, let's try another way of moving about the screen.  Press
  699. the slash key.    When prompted, enter "g" for Goto.  You will be asked for a
  700. set of cell co-ordinates.  Enter "a3" and press <RETURN>.  The screen will
  701. be redrawn with you at cell A3.  Enter "     Type:" (that's 5 spaces at the
  702. beginning).  The reason for entering the spaces is that Webspread always
  703. pulls text to the left of a cell, and numbers to the right. After entering
  704. " Type:", hit the right cursor key to move to cell B3.  Enter " Quantity:"
  705. (1 space). Move to C3 and enter "    Price:" (4 spaces). Next, in D3 enter
  706. " Income:" (3 spaces).  In E2 enter "      Cost" (6 spaces) while in E3
  707. enter " Each:" (5 spaces).  F2 gets "     Total:" (5 spaces), F3 should
  708. have " cost:" (5 spaces) and in G3 enter " Profit:" (3 spaces).  Move to
  709. column A and enter "small" in A4, "medium" in A5, "large" in A6 and down in
  710. A8 put "TOTALS:".  That concludes the text we need for our example
  711. spreadsheet. You may wish to use the "Goto" command at this point to put
  712. the cursor in cell A1 and thus display all the sheet.
  713.    We will put in the line of dots to set off our calculations from the
  714. total line next.  When you create your own spreadsheets, you will probably
  715. find it easier to see what is going on if you use blank space and lines to
  716. set off the various areas, as we are doing here.  (Be careful with dashes in
  717. your lines.  If Webspread sees a dash as the first character in a cell, it
  718. will expect a negative number.  Dashes may be used in text if preceded by
  719. another character that is clearly non-numeric or if in a cell that will not
  720. be refered to by any formula.)  Move to cell B7.  When there, enter a series
  721. of dots. You will need at least 10.  (Remember that when entering
  722. non-numbers, Webspread will display as much of what you enter as will fit in
  723. the cell.  The remainder will be remembered, but not shown.  Therefore, if
  724. you accidentally enter 11 or 12 dots, it won't matter.)  While in B7 select
  725. the "Copy" command.  When prompted, press "A" for across.  Then enter "5" for
  726. number of copies.  You will see your dots appear in a row.  Type "M" to
  727. return to the Main Menu.  Now we are ready to use our blank sheet.
  728.  
  729.  
  730. ENTERING FORMULAS AND NUMBERS
  731.  
  732.    Move to cell B4.  In our example, the Wizbang Widget Company sold 10 of
  733. the small variety in July (they are a little company) so we enter a 10 here.
  734. Note that unlike text, a number is justified to the right.  Also, whereas
  735. Webspread simply shows as much text as will fit in a cell, if a number is
  736. too long to fit in a cell you will see an error signal in the cell.  The
  737. error signal is E!.  The number is there, it just can't be displayed in the
  738. cell. We show you an error message, as to display just the portion of the
  739. number that would fit could be very misleading.  All you have to do is
  740. select an appropriate value for the column width, and the error message
  741. will be replaced by your entry.  Why not move to B5 and try it?  Enter an
  742. 11 digit number.  Next, use the Width command to resize you columns to 11
  743. or 12 and see what happens.  Remember to restore the Width to 10 when done.
  744. Then, just enter 20 at this point and it will replace the current entry in
  745. the cell.  Place a 30 in cell B6.
  746.    We will continue adding our known, fixed numbers.  This includes the
  747. price Wizbang sells its various widgets for, and how much it costs them to
  748. manufacture each type. Go ahead and enter all the numbers in column C and
  749. column E.
  750.    Now we are ready for the real power in our spreadsheet, the formulas.
  751. First, we need to know how much income we received from each type of
  752. widget. The income produced is the asking price times the number we sold.
  753. Move to cell D4, where we want the income from the sale of the small
  754. widgets.  We need to take the quantity sold, contained in cell B4, and
  755. multiply it by the price of each, contained in cell C4, and place the
  756. answer in cell D4.  The answer will automatically appear in the cell
  757. containing the formula, which is why we moved to cell D4.  To multiply the
  758. contents of the cells B4 and C4 we enter @B4*C4 which is pretty straight
  759. forward.  The @ symbol tells Webspread to treat this entry as a formula.
  760. (NOTE - even though we show cell names all in capital letters to make them
  761. easier to read, you don't have to type them in that way.  Webspread doesn't
  762. care whether you type a1 or A1.  Either will work just as well.)  You
  763. will see a zero appear in cell D4.  That is because the formula has not
  764. been evaluated yet, so Webspread has not calculated a value for the cell.
  765. We will show you how to evaluate a spreadsheet with the "Recalc" command
  766. in a few minutes.  Now, move to D5 and enter a similar formula to
  767. multiply the medium sized Widgets' price by quantity.  The formula that
  768. goes here is @B5*C5.  Try "large" on your own. If you figured you needed
  769. to enter @B6*C6 in cell D6 you were right.
  770.    There is an easier way to do what we just did!  Since this is a tutorial,
  771. we wanted you to try things every way possible, and the absolute method of
  772. refering to a cell that you just used is very important.  We'll use the
  773. Total cost: column to show you an easier way to set up formulas, when there
  774. are several of them that must do just about the same thing.  To begin, move
  775. to cell F4, please.  Now, type in @[C-4]*[C-1] (remember, you don't need to
  776. capitalize the Cs unless you just wish to.)  We have just entered a relative
  777. formula.  It means the following: "take the value in the cell that is 4
  778. columns back from this one (which would be cell B4) and multiply it by the
  779. value in the cell that is 1 column back from this one (E4)".  That, of
  780. course, would figure our total cost for us: quantity made times the cost to
  781. make each one = total cost.  Now, if we typed the exact same formula in
  782. cell F5, the formula would figure the total cost of the medium sized Widgets
  783. for us, since the cells refered to would now be the ones in row 5.  There is
  784. an easy way to do this, without retyping anything.  We will use the "Copy"
  785. command, just as we did when we put in our row of dots.  This time, choose
  786. "Down" by pressing "D" at the prompt, then "2" for number of copies.  Your
  787. formula will be copied into cells F5 and F6.
  788.    Move next to cell G4.  We'll use the relative method and "Copy" command
  789. here too, to handle our profit calculations.  Try to figure the formula out
  790. yourself first, then continue reading.  OK, the formula for cell G4 is
  791. @[C-3]-[C-1] since Income less Total Cost gives us our profit.    @D4-F4
  792. would work too, but we couldn't just copy that to cells G5 and G6 and use
  793. it there.  If you came up with the correct formula (either one)
  794. congratulations!  If not, don't worry about it for now. We're still new
  795. at this.  Just enter the relative formula in G4 and copy it to cells G5
  796. and G6 as explained in the last paragraph.  Those who put the absolute
  797. reference formula in cell G4 go ahead and set up cells G5 and G6 either
  798. way.
  799.    You may be wondering at this point why anyone would wish to use the
  800. absolute method we showed you first, when the relative method is so much
  801. more flexible.   Well, for one thing, the absolute method is simpler.  If you
  802. have a unique formula that you will not be copying, and you don't anticipate
  803. adding rows or columns in between the ones you need, the absolute method is
  804. fine.  Also, you can "pin down" one end of a range and let the other end
  805. vary, by using both methods together.  Example: formula @SUMA1.[R-1] will
  806. sum all the cells from A1 to one before the cell containing the formula.  If
  807. you add any rows at a later date, the absolute reference to cell A1 will
  808. ensure that your range goes all the way back no matter where your added row
  809. falls.    We will discuss how to use the @SUM command in just a few minutes.
  810.    Time to pause and reflect on what we've done.  We have learned how to
  811. enter text.  We've learned how to make it look good across many cells and
  812. also how to line it up the the right if we need to (the use of spaces).
  813. We've learned how to enter numbers, and also how to enter formulas with both
  814. absolute and relative cell references.    We've learned how to duplicate cell
  815. contents to save typing (and minimize the chances for error from typos, too).
  816. We may not be CPAs yet, but we aren't doing too badly either.
  817.    There is one more formula type we want to review in this tutorial.  That
  818. is the summation command.  It is very handy for figuring totals, and since
  819. that is what one row of our spreadsheet mainly does, we will use this
  820. function there.  Move to cell B8 please.  Once there, enter the following
  821. formula: @SUMB4.B6 (once again, capital letters are optional).  Note that
  822. there are no spaces anywhere in the formula, and that there is only one dot
  823. between the cell references.  What we have told Webspread to do is sum up
  824. the value of all the cells between B4 and B6.  That will neatly give us our
  825. total quantity.  Note that you can sum a range of cells in a given column
  826. or a row, or even a rectangular area.  You must always specify the upper or
  827. leftmost cell of the range first.  For a rectangular area, specify the
  828. upper left then the lower right corner.  If you include any cells with text
  829. in them in your range, they will be ignored by the @SUM command.
  830.    We can use our relative cell references with the @SUM command.  This can
  831. come in handy if you later expect to insert a column or row in the center of
  832. your range.  Move to cell D8 and we'll put a relative summation formula
  833. there to figure total income.  Enter @SUM[R-4].[R-2] and we are all set.  If
  834. you already figured out that this formula could be copied to G8 to give us
  835. our total profit, good for you.  Go ahead and copy the formula to G8 at this
  836. time.  (Total profit could also be calculated by subtracting the value in
  837. cell F8 from the value in cell D8.  You might want to try entering a formula
  838. to do this.)
  839.    At this point, save your spreadsheet for future reference.  That way, if
  840. you do something to destroy it, you can always reload it.  Press the slash
  841. key, then F for Files. Press the C key to tell Webspread you want to set
  842. the Current directory, that is, to define where to save the file. If you
  843. are unsure right now where you want your files stored, enter the name of
  844. the drive holding the disk containing Webspread (such as df0:). Now,
  845. press S for Save.  Use the file name "Tutorial" or something else easy to
  846. remember.
  847.    Our spreadsheet doesn't look too attractive with no totals figured
  848. anywhere.  To make all the formulas do their work, we use the Recalc
  849. command.  Press the slash key, then R when prompted to enter a letter.
  850. After a few moments all your formulas will be evaluated.  You should see the
  851. numbers as shown in Figure 3.  If you don't, take a look at your formulas
  852. and the above paragraphs.  Make sure they all agree, then use Recalc again.
  853. Once this is done, try experimenting by entering other numbers into the
  854. spreadsheet and recalculating it.  Use some negative numbers, too.
  855.    When you have a display you especially like, place your cursor at cell
  856. A1. Then, select F from the Main Command Menu (slash commands).  Then,
  857. select O (Output file) from the Files menu that appears.  You will be asked
  858. for the lower right hand co-ordinate of a rectangular area of your
  859. spreadsheet.  The cell G8 is the lower right hand co-ordinate of our
  860. tutorial sheet, so enter that.    Give the file a name ("Tutorial" will do
  861. again).  Webspread will save a "picture" of your spreadsheet in a file that
  862. can be loaded into Ed or a wordprocessor and used there (as long as the
  863. wordprocessor can use regular ASCII files.  Check your manual if in doubt.)
  864. You can use this method to prepare fancier printouts, or to include
  865. spreadsheets in reports.  Note that output files will have the extension
  866. .ASCII added to the name you select, so you can use the same name as for
  867. your regular Webspread files with no danger of one overwriting the other.
  868.    If you have a printer attached to your system, Webspread will make a
  869. printed copy of your spreadsheet for you.  Make certain that the upper left
  870. hand cell of the area you want printed is in the upper left hand corner
  871. of the screen and then procede as you did for the Output file.
  872.    This is a good time to revisit the mode command.  Using the slash key
  873. then the dollar sign key, call up the mode requester.  Click in the "All
  874. dec." box to change modes.  Now, go to cell D4 and change the entry there
  875. to 500.123.  Use the recalc command and note what happened in cell D8, the
  876. total for the D column.  Now, go back to the mode command and change to the
  877. currency mode again.  Follow up with another recalc.  What happened in cell
  878. D8?
  879.    A reason for always using the currency mode when doing financial work
  880. stems from the built in limitations every computer has.  Sooner or later,
  881. a number will come along that has more decimals than can be readily
  882. handled and some portion of the number will be dropped. This is almost
  883. always an insignificant amount, but it can mess up the display of
  884. financial data. With currency mode on, such errors are compensated for
  885. and everything is rounded off properly to the correct two place decimal. 
  886. If instead you need to show as much of the decimals calculated as
  887. possible, use the "All decimals" mode.
  888.    There is one more experiment for you to try.  Select the Insert command
  889. and insert a row before row 5. (Press the slash key, then the I key when
  890. asked for a command letter.  Follow the on screen prompts from there.)
  891. The purpose for this exercise is simply to show you how easy it is to make
  892. room in the middle of a spreadsheet if you forget things.  Columns can be
  893. added just as easily.  You WILL have to remember to adjust any formulas
  894. that may now be refering to the wrong cells.
  895.    That concludes our tutorial.  We have really only begun to explore what
  896. you can do with the program.  Look over the command and formulas sections
  897. of this document, and experiment.  Users of the ELFFs datafile manager
  898. will especially want to do this, in order to learn how to integrate their
  899. ELFFs' files with their spreadsheets.  All the information you need is
  900. right there.
  901.  
  902.  
  903.  
  904.                              FUTURE PLANS
  905.                              ============
  906.  
  907.    Webspread is not shareware in the usual sense in that I am not asking
  908. you to send me money for this program if you find it of use. However, I
  909. do have some plans for improving Webspread (though no guarantees that I
  910. will ever get around to them. Working a full time job during the days and
  911. for Jumpdisk in the evenings doesn't leave as much time for programming
  912. as I'd like.) If the updates come to pass and you have sent a donation
  913. that will cover me mailing you information, I will let you know about any
  914. updates. Otherwise, keep an eye on the boards to see if an update shows
  915. up. With that in mind, perhaps you would like to know what I am
  916. considering doing.
  917.    Most important is a rewrite in a faster language. I have already begun
  918. preparations for a rewrite in Modula II. This should help out in several
  919. areas, including the scrolling speeds and loading speeds. I may switch to
  920. the much under-rated FBasic system from Delphi Noetic Systems instead.
  921. It's too early to tell at this stage, but either should be an improvement.
  922.    The key buffer should be cleared regularly so the program doesn't keep
  923. trying to scroll forever when you hold the cursor key down for awhile and
  924. then release it. It's a little thing, but it bothers me and so probably
  925. bothers you.
  926.    Those are firmly in the specification for an upgrade. Being considered
  927. is a better method of handling formulas refered to by other formulas to
  928. remove the two deep limitation. Also being considered is optional mouse
  929. control. How about letting me know what you would like to see as well?
  930.  
  931.  
  932.                               FINAL WORD
  933.                               ==========
  934.  
  935.    I hope you enjoy Webspread.  I have found it adequate for all my
  936. needs.  As before, I would be interested in hearing from anyone who finds
  937. an unusual use for Webspread or the Webspread/ELFFs combination. And
  938. remember to read Jumpdisk, the first disk magazine for the Amiga
  939. (published every month for over forty months as I write this!).
  940.  
  941.  
  942.  
  943.                     Documentation Revision History
  944.                     ==============================
  945.  
  946. 10 May, 1988 for Webspread.V1.0
  947. revised 11 July 1989 for Webspread.V1.1
  948. revised 15 July 1989 for distribution
  949. revised 09 August 1989 for WebspreadV1.2
  950. revised 28 December 1989 for WebspreadV1.3H-beta
  951. revised  7 January 1990 for WebspreadV1.6-Beta
  952. revised 30 January 1990 for WebspreadV1.6